1. Technical Field
Embodiments described in this disclosure generally relate to techniques for managing servers running multiple virtual machines in a data-center environment. More specifically, embodiments described in this disclosure relate to virtualized servers kernel and virtual networks consolidation.
2. Description of the Related Art
Server virtualization technology allows multiple virtual machines to run concurrently on a single physical computing system. Currently, data center environments are used to create large clusters of such physical computing systems (commonly referred to as servers), where each server runs multiple virtual machines. This approach has led to data centers that can supply massive amounts of computing power. At the same time, the networking infrastructure to manage such a data center has grown ever more complex.
From a networking perspective, server virtualization requires the use of several Network Interface Cards (NICs) and Host Bus Adapters (HBAs). A typical configuration requires multiple NIC cards for server production traffic (at least 2 for redundancy), one NIC for management, one NIC used for memory copy operations during the migration of virtual machines, potentially one NIC for heartbeats when clustering is used, at least 2 HBAs for storage access, and finally separate NICs for a control plane and data plane VLANs (virtual Local Area Networks) in cases where a distributed virtual switch is deployed. The need for multiple NIC cards arises from a need to guarantee uninterrupted management access to each server and distributed virtual switch and to provide a minimum bandwidth for memory copy operations.
At the same time, each additional network interface increases the cost, cabling complexity, and energy consumption within the data center. Further, each additional card generates heat which increases cooling requirements, also driving up the cost of running the data center. Thus, data center operators are interested in reducing this proliferation of NICs and HBAs to reduce data center complexity as well as cost and power consumption.
A simple approach is to use 10 Gigabit Ethernet cards and using VLANs to separate different traffic types. However, VLANs do not provide any guarantee in terms of bandwidth to any particular quality of service classification. Furthermore, it is important to note that the first congestion point for the traffic on a virtualized server is the Ethernet link between the virtualized server and the attached physical switch. This is because the physical NIC in the in the virtualized server is shared among competing traffic flows from different virtual machines, as well as the management traffic that enables the server virtualization functionalities, so the concept of traffic prioritization needs to be applied between the server itself and the switch, rendering VLANs alone insufficient.